using System;
using System.Collections;

namespace Com.CMS263.PO
{
	#region VoteOption

	/// <summary>
	/// VoteOption object for NHibernate mapped table 'VoteOption'.
	/// </summary>
	public class VoteOption
	{
		#region Member Variables
		
		protected int _id;
		protected int _voteTopicId;
		protected string _optionValue;
		protected int _clickCount;
		protected int _sortId;

		#endregion

		#region Constructors

		public VoteOption() { }

		public VoteOption( int voteTopicId, string optionValue, int clickCount, int sortId )
		{
			this._voteTopicId = voteTopicId;
			this._optionValue = optionValue;
			this._clickCount = clickCount;
			this._sortId = sortId;
		}

		#endregion

		#region Public Properties

		public virtual int Id
		{
			get {return _id;}
			set {_id = value;}
		}

		public  virtual int VoteTopicId
		{
			get { return _voteTopicId; }
			set { _voteTopicId = value; }
		}

		public  virtual string OptionValue
		{
			get { return _optionValue; }
			set
			{
				if ( value != null && value.Length > 500)
					throw new ArgumentOutOfRangeException("Invalid value for OptionValue", value, value.ToString());
				_optionValue = value;
			}
		}

		public  virtual int ClickCount
		{
			get { return _clickCount; }
			set { _clickCount = value; }
		}

		public  virtual int SortId
		{
			get { return _sortId; }
			set { _sortId = value; }
		}

		

		#endregion
	}
	#endregion
}